Plan

  1. Generalisiertes Lineares Modell (GLM)
  2. Linear Mixed Model (LMM)
  3. Alles das gleiche? Übertragung auf IRT Kontext

Generalisiertes Lineares Modell

Lineare Regression:

\[ y = Xb+e \]

Was aber machen wir, wenn wir statt eines kontinuierlichen Outcomes \(y\) nur 0 und 1 vorhersagen wollen (wie bei IRT)?

  • Verletzung vieler Annahmen
  • Dass Modell würde auch Werte außerhalb der sinnvollen Range vorhersagen.

Logistische Regression

Wir können die Prädiktorseite aber transformieren, damit die Outcome-Werte auf der gewünschten Skala liegen:

\[ E(y) = \mu = g^{-1}(Xb) \]

Logistische Regression

IRT nutzt die logistische Regression, um die Wahrscheinlichkeit von 0 oder 1 vorherzusagen.

Link Funktion \(g()\): probit oder logit, S-Kurve.
Mit Hilfe der Link Funktion transformieren wir die Outcomes, damit sie auf der gewünschten Skala liegen.

Logit-Funktion

\[ g(\mu) = logit(\mu) = ln\left(\frac{\mu}{1-\mu}\right) = Xb \]

Die logit Funktion bringt also unsere Werte auf die logit-Skala, sodass sie die Wahrscheinlichkeiten nicht mehr zwischen 0 und 1 liegen.

Im IRT Fall

\[ logit(P(X_{pi}=1)) = \ln\left(\frac{P(X_{pi}=1)}{1-P(X_{pi}=1)}\right) = \theta_p - \beta_i \]

\[ P(X_{pi}=1) = g^{-1}(\theta_p - \beta_i) \]

Beispiel

Wir haben einen Datensatz der Schüler*innen aus verschiedenen Schulen enthält:

str(stud_data)
tibble [7,185 × 5] (S3: tbl_df/tbl/data.frame)
 $ school  : chr [1:7185] "1224" "1224" "1224" "1224" ...
 $ minority: Factor w/ 2 levels "No","Yes": 1 1 1 1 1 1 1 1 1 1 ...
 $ sex     : Factor w/ 2 levels "Male","Female": 2 2 1 1 1 1 2 1 2 1 ...
 $ ses     : num [1:7185] -1.528 -0.588 -0.528 -0.668 -0.158 ...
 $ mathach : num [1:7185] 5.88 19.71 20.35 8.78 17.9 ...

Es fällt direkt auf: Die Daten sind genestet. Schüler*innen sind in Schulen gruppiert. Wie gehen wir damit um?

Warum dieses Beispiel?

Genauso wie hier Schüler*innen in Schulen genestet sind, können wir Items als genestet in Personen betrachten.

Option 1: Ignorieren

Option 1: Ignorieren

Generell eher keine gute Idee:

  • Die genestete Struktur kann von Interesse sein!
  • Wir tun so, als ob wir mehr Informationen hätten, als wir letztendlich haben. Das liegt daran, dass Abhängigkeiten zwischen den Daten bestehen. Konsequenz:

Standardfehler werden unterschätzt, unsere Inferenzstatistischen Tests werden eher signifikant.

Option 2: Aggregieren

Option 2: Aggregieren

  • Gefahr eines ökologischen Fehlschlusses
  • Verlust an Informationen und an Power.
  • Gruppenstrukturen sind meist auch von Interesse.

Option 3: Disaggregiert Analyse mit Gruppen als Prädiktoren

mod1 <- lm(mathach ~ ses_cent + school + ses_cent*school, data = illustration_dat)

coef(mod1)
        (Intercept)            ses_cent          school1288          school1296 
          10.805492            2.508582            2.309913           -2.711558 
ses_cent:school1288 ses_cent:school1296 
           0.746867           -1.432623 

Option 3: Disaggregiert Analyse mit Gruppen als Prädiktoren

Option 3: Disaggregiert Analyse mit Gruppen als Prädiktoren

  • Wird bei vielen Gruppen schnell unübersichtlich (vor allem auch mit verschiedenen Interkationen).
  • Multilevel-Modelle können die Nestung explizieter berücksichtigen.

Option 4: Multilevel-Modell

library(lme4)
mod2 <- lmer(mathach ~ 1 + ses_cent + (1 + ses_cent|school), data = stud_data) 
summary(mod2)
Linear mixed model fit by REML ['lmerMod']
Formula: mathach ~ 1 + ses_cent + (1 + ses_cent | school)
   Data: stud_data

REML criterion at convergence: 46640.4

Scaled residuals: 
     Min       1Q   Median       3Q      Max 
-3.12272 -0.73046  0.02144  0.75610  2.94356 

Random effects:
 Groups   Name        Variance Std.Dev. Corr 
 school   (Intercept)  4.8287  2.1974        
          ses_cent     0.4129  0.6426   -0.11
 Residual             36.8301  6.0688        
Number of obs: 7185, groups:  school, 160

Fixed effects:
            Estimate Std. Error t value
(Intercept)  12.6654     0.1898   66.71
ses_cent      2.3938     0.1181   20.27

Correlation of Fixed Effects:
         (Intr)
ses_cent -0.045

Option 4: Multilevel-Modell

Gleichungen

Level 1 Gleichung

Für jede Person i in Gruppe j: \[ y_{ij} = \beta_{0j} + \beta_{1j}x_{ij} + e_{ij} \]

Level 1 Gleichung

Level-2 Gleichung

\[ \beta_{0j} = \beta_{0}+\zeta_{0j} \]

\[ \beta_{1j} = \beta_1 + \zeta_{1j} \]

Level 2 Gleichung

Das gemischte Modell

Jetzt müssen wir nur noch einsetzen:

\[ y_{ij} = \beta_{0j} + \beta_{1j}x_{ij} + e_{ij} \] \[ \beta_{0j} = \beta_{0}+\zeta_{0j} \]

\[ \beta_{1j} = \beta_1 + \zeta_{1j} \]

\[ \color{#F4BA02}{y_{ij} = \beta_{0}+\beta_1x_{ij} + \zeta_{0j} + \zeta_{1j}x_{ij} + e_{ij}} \]

Das gemischte Modell

Prädiktoren

Wir können jetzt auf beiden Ebenen auch noch Prädiktoren in die Gleichung mit aufnehmen und schauen, ob sich dadurch Varianz in den jeweiligen Leveln (\(x_{ij}\) oder \(\zeta_{0j}\) aufklären lässt). Und das tolle: wir können auch eine Cross-Level-Interaktion modellieren (interagiert ein Level-1 Prädiktor mit einem Level 2 Prädiktor?).

Beispiel Cross-Level-Interaktion

Zusammenhang zwischen Lernzeit (Level 1 Prädiktor, da individuell) und Lehrqualität könnte an Schulen mit hoher Lehrqualität stärker sein als an Schulen mit niedrigerer Lehrqualität.

Random und Fixed effects

Random Effects

  • Annahme eines zugrundeliegenden Populationsmittelwerts. Von diesem weichen die Gruppen random ab. Bei Wiederholung würden wir andere Gruppen ziehen.
  • Partial Pooling: Regularisierung der Extremen Werte in Richtung Gruppenmittelwert.

Fixed Effects

  • Hier machen wir diese Annahme einfach nicht.
  • Uns interessieren die tatsächlichen Gruppen, bei Wiederholung würden wir vermutlich die gleichen ziehen.

Beispiel

Wir untersuchen den Erfolg von Verhaltenstherapie und Psychoanalyse anhand der Rückfallquote nach einem Jahr.
Patient*innen müssen hier nach Therapeut*innen genested werden. Dabei können wir die Therapeut*innen als random effects betrachten, wir haben sie ja schließlich nur als Mittel zum Zweck aus der Population an Therapeut*innen gezogen. Die Behandlungsform (Verhaltenstherapie, Psychoanalyse) ist hingegen ein fixed effect, da wir nur diese beiden Behandlungsformen untersuchen wollen.

Anders würde das Ganze aussehen, wenn uns die Erfolgsquote speziell dieser Therapeut*innen interessieren würde. Dann könnten wir sie ebenfalls als fixed effect im Modell mit aufnehmen.

lme4

library(lme4)

mod1 <- lmer(mathach ~ ses_cent + (1 |school), data = illustration_dat) 
summary(mod1)
Linear mixed model fit by REML ['lmerMod']
Formula: mathach ~ ses_cent + (1 | school)
   Data: illustration_dat

REML criterion at convergence: 790

Scaled residuals: 
    Min      1Q  Median      3Q     Max 
-2.1094 -0.7052 -0.1466  0.6774  2.4799 

Random effects:
 Groups   Name        Variance Std.Dev.
 school   (Intercept)  3.947   1.987   
 Residual             42.860   6.547   
Number of obs: 120, groups:  school, 3

Fixed effects:
            Estimate Std. Error t value
(Intercept)  10.7346     1.3257   8.097
ses_cent      2.3062     0.9246   2.494

Correlation of Fixed Effects:
         (Intr)
ses_cent 0.185 

Raschmodell als LMM

Warum das Ganze? Es geht doch eigentlich um IRT?

Raschmodell als Spezialfall von LMM

Wir können die Items genestet in Personen betrachten.

Dafür müssen wir zwei Dinge beachten:

  • Link Funktion.
  • Entscheidung über Annahme von fixed/random effects von Personen und Items.

Fixed und Random Effects

  • Entwicklung Fragebogen um diesen an verschiedenen Stichproben zu nutzen: Person als random, Items als fixed.
  • Entwicklung von Items für einen großen Fragenkatalog: Items ebenfalls als random.

Prädiktoren

Die Formulierung von IRT Modellen als Multilevel Modell erlaubt es uns, auf elegante Art Prädiktoren mit in das Modell aufzunehmen.

Literatur

Bürkner, P.-C. (2019). Bayesian item response modeling in R with brms and Stan. arXiv preprint arXiv:1905.09501.
Doran, H., Bates, D., Bliese, P., & Dowling, M. (2007). Estimating the multilevel Rasch model: With the lme4 package. Journal of Statistical software, 20, 1–18.

Bildquellen